package com.sise.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.sise.bean.CodeMsg;
import com.sise.entity.ProductType;
import com.sise.entity.StoreInfo;

import java.util.List;

/**
 * @author zj
 */
public interface IStoreInfoService extends IService<StoreInfo> {

    /**
     * 添加一个商铺信息
     */
    boolean save(StoreInfo storeInfo);

    /**
     * 根据 storeId 删除一个商铺信息
     */
    boolean deleteById(Integer storeId);

    /**
     * 删除在 storeIdList 中的商铺信息
     */
    boolean deleteByIdList(List<Integer> storeIdList);

    /**
     * 根据 storeId 修改一个商铺信息
     */
    boolean updateById(StoreInfo storeInfo);

    /**
     * 根据 productTypeId 查询一个商铺信息
     */
    StoreInfo findById(Integer storeId);

    /**
     * 查询所有商铺信息
     */
    List<StoreInfo> findAll();

    /**
     * @param storeInfo   店铺信息
     * @param productType 商品信息
     * @return 返回结果
     */
    CodeMsg<String> addStoreInfo(StoreInfo storeInfo, ProductType productType);

    /**
     * @param storeInfo 店铺信息
     * @return 操作结果
     */
    CodeMsg<String> updateStoreInfo(StoreInfo storeInfo);

    /**
     * @return 返回店铺信息
     */
    CodeMsg<List<StoreInfo>> getShopInfo();

    /**
     * @param storeIds 店铺ID
     * @return 操作结果
     */
    CodeMsg<String> updateStoreInfoByRest(int[] storeIds);

    /**
     * @param storeIds 店铺ID
     * @return 操作结果
     */
    CodeMsg<String> updateStoreInfoByBusiness(int[] storeIds);
}
